package com.chanzany.flyweight;

public abstract class WebSite {
    public abstract void use(WebUser user);
}
//WebUser作为外部状态(方法调入时传入)，type作为内部状态，通过构造器传入并通过池化工厂获取
class ConcreteWebSite extends WebSite{

    private final String type;   //网站发布的形式

    ConcreteWebSite(String type) {
        this.type = type;
    }

    @Override
    public void use(WebUser user) {
        System.out.println("网站的发布形式为："+type+" 面向客户为："+user.getName());
    }
}